<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <p>只有对象、数组、函数这样的复杂数据类型，才需要考虑深拷贝</p>
    <script>
        let obj1 = {name: 'Tom', age: 18};
        console.log(obj1);
        let obj2 = obj1; // 此时，多了一个访问对象的路径，而不是多了一个对象。只有一个对象，多了一个访问的方式
        console.log(obj2);
        obj2.age = 20;
        console.log(obj1);
        console.log(obj2);
        // obj1和obj2都不是对象本身，而是一个内存空间。

        // 深拷贝：修改obj2时obj1不变。浅拷贝拷贝的是址，深拷贝拷贝的值。
        let obj3 = JSON.parse(JSON.stringify(obj1)); // 简单粗暴,除了不能处理函数，别的通用
        obj3.age = 69;
        console.log(obj1, obj2);
        let obj4 = {};
        // for() { // 遍历对象
        //     obj4[key] = val
        // }
    </script>
</body>
</html>